const cluster = require('cluster'); // node 多核能力  
const http = require('http');
// http 服务器 1314 nginx 代理 <- 80  Proxy  
// location  /
//     {
//         proxy_pass  http://127.0.0.1:1314
//     }
// 一台服务器的多线程功能
const numCPUs = require('os').cpus().length;
// console.log(numCPUs)

if(cluster.isMaster) { // 主线程
    console.log(`主线程${process.pid} 正在运行`); 
    for(let i=0;i<numCPUs;i++) {
        cluster.fork(); // 每个cpu就像主线程一样来工作了
    }
} else {
    // 工作进程可以共享TCP/HTTP 服务
    http.createServer((req,res) => {
        res.writeHead(200,{'Content-Type':'text/plain;charset=UTF-8'});
        res.end(`你好世界\n${process.pid}`)
    }).listen(8000)
    console.log(`工作进程${process.pid} 已启动`)
}